From 290437274d0f5700bb08609f515ed16d781831db Mon Sep 17 00:00:00 2001 From: robertl Date: Tue, 14 Sep 2004 14:42:08 +0000 Subject: [PATCH] Attempt to handle new forerunner track types. --- jeeps/gpsapp.c | 37 ++++++++++++++++++++++--------------- jeeps/gpsprot.h | 2 ++ 2 files changed, 24 insertions(+), 15 deletions(-) diff --git a/jeeps/gpsapp.c b/jeeps/gpsapp.c index 8fcd7df78..4108c24a7 100644 --- a/jeeps/gpsapp.c +++ b/jeeps/gpsapp.c @@ -337,12 +337,19 @@ static void GPS_A001(GPS_PPacket packet) } else if(data<400) { - if(data==300) - gps_trk_transfer = pA300; - else if(data==301) - gps_trk_transfer = pA301; - else - GPS_Protocol_Error(tag,data); + switch (data) { + case 300: + gps_trk_transfer = pA300; + break; + case 301: + gps_trk_transfer = pA301; + break; + case 302: + gps_trk_transfer = pA302; + break; + default: + GPS_Protocol_Error(tag,data); + } continue; } else if(data<500) @@ -472,15 +479,13 @@ static void GPS_A001(GPS_PPacket packet) else if(lasta<400) { - if(data==300) - gps_trk_type = pD300; - else if(data==301) - gps_trk_type = pD301; - else if(data==310) - gps_trk_hdr_type = pD310; - else - GPS_Protocol_Error(tag,data); - continue; + switch (data) { + case 300: gps_trk_type = pD300; break; + case 301: gps_trk_type = pD301; break; + case 302: gps_trk_type = pD302; break; + default: GPS_Protocol_Error(tag,data); break; + } + continue; } @@ -3302,6 +3307,7 @@ int32 GPS_A301_Get(const char *port, GPS_PTrack **trk) GPS_D300b_Get(&((*trk)[i]),rec->data); break; case pD301: + case pD302: GPS_D301b_Get(&((*trk)[i]),rec->data); break; default: @@ -3509,6 +3515,7 @@ int32 GPS_A301_Send(const char *port, GPS_PTrack *trk, int32 n) len = 13; break; case pD301: + case pD302: GPS_D301_Send(data,trk[i]); len = 21; break; diff --git a/jeeps/gpsprot.h b/jeeps/gpsprot.h index ff8adf95c..b0d430b54 100644 --- a/jeeps/gpsprot.h +++ b/jeeps/gpsprot.h @@ -88,6 +88,7 @@ int32 gps_route_transfer; */ #define pA300 300 #define pA301 301 +#define pA302 302 int32 gps_trk_transfer; /* @@ -171,6 +172,7 @@ int32 gps_rte_link_type; */ #define pD300 300 #define pD301 301 +#define pD302 302 int32 gps_trk_type; -- 2.30.2